Data processing structure

ABSTRACT

The invention relates to a data processing structure comprising a plurality of processors ( 20   i ) and a data bus ( 100 ) for a data communication with a serial data structure. The plurality of processors ( 20   i ) can be respectively coupled in parallel to the data bus ( 100 ), and a data communication via said data bus ( 100 ) with one of the processors ( 20   i ), preferably a programniing of said processor ( 20   i ), is authorised for the same ( 20   i ), but is blocked for all of the other ( 20   j ) processors.

[0001] The present invention relates to a data processing structure having a plurality of processors and a data bus for data communication with a serial data structure.

[0002] Drive systems usually comprise a drive controller with control electronics, a transmission system and a motor. In particular in complex systems there may be a plurality of such drive systems in a small space, for example in the arm of a robot with a plurality of degrees of freedom in the direction of movement.

[0003]FIG. 1 shows a drive system which is known from the prior art for robots having a plurality of drive controllers 10A, 10B, . . . etc. Each of the drive controllers 10 i (where i=A, B, . . . etc.) has a microcontroller (or microprocessor) 20 i which in turn controls, for example, a motor or motor and transmission system (indicated in FIG. 1 by the arrow 25 i). Each of the microcontrollers 20 i is connected in each case in parallel with a field bus 30 via which each of the microcontrollers 20 i can be controlled centrally by a central controller 50. For example a CAN (Control Area Network) bus system, such as is known in particular from the field of automobiles, is used for the field bus 30 here.

[0004] If the microcontrollers 20 i are not already configured or if they are to be reconfigured individually or collectively, in each case there must be access from the outside to the respective microcontroller or microcontrollers 20 i as configuration via the field bus 30 is not possible. The microcontroller 20 i needs a minimum operating software in order to 30 operate the field bus.

[0005] In order to avoid the microcontrollers 20 i being accessed from the outside, and thus to reduce the expenditure on programming, each microcontroller 20 i which is to be programmed can be accessed with a separate data bus 40 i, typically a serial data bus with point to point structure such as an RS232 interface. As a result, in each case a feeder line of a data bus 40 i is necessary from a central programming unit 60 for each microcontroller 20 i to be programmed, as is illustrated in FIG. 1.

[0006] Although adding the data buses 40 i for programming the microcontrollers 20 i can significantly reduce the expenditure on programming and the microcontrollers 20 i can be programmed individually and flexibly, the actual increased expenditure on cabling as a result of the individual feeder lines to the data buses 40 i proves impractical in many cases, in particular if only a small amount of space is available, as in the case of a robot arm. As the number of necessary data buses 40 i increases in each case, the existing space reserves are very quickly used up and a selection of microcontrollers 20 i, which are each respectively equipped with a data bus 40 i and are therefore freely programmable, has to be made in accordance with the space available.

[0007] The present invention is based on the object of providing a drive system having a plurality of drive controllers, in particular for applications in robots, in which the drive controllers are each freely programmable and which can be used even in applications where exacting requirements are made of the compactness of the system.

[0008] In order to achieve this object, the plurality of processors can each be connected to the data bus in a parallel connection, and data communication via the data bus with one of the plurality of processors, preferably comprising programming this processor, is permitted for this processor and prohibited for all the others of the plurality of processors.

[0009] In accordance with the present invention, each of a plurality of microcontrollers is connected both by a field bus for controlling the microcontrollers and by a serial data bus for programming the microcontrollers, in each case in a parallel connection. Here, each microcontroller is assigned a control unit and a switching unit. In order to program one of the microcontrollers, its assigned control unit is actuated via the field bus so that it acts on the respective switching unit and data communication via the data bus is permitted with the respective microcontroller. All the other microcontrollers which are connected via the data bus are disconnected simultaneously from the data bus by their respective control units and switching units so that data communication is permitted exclusively with the one microcontroller to be programmed. The respective microcontroller is then programmed via the serial data bus.

[0010] Although according to the invention the serial data bus is accordingly fed in the form of a parallel connection with respect to the microcontrollers, the invention ensures, by means of the respective connection of the microcontroller to be programmed to the data bus and the simultaneous disconnection of the other microcontroller (which is not to be programmed) from the data bus, that the serial transmission of data for programming the one microcontroller can be carried out reliably and without disruption. In order to program a further microcontroller, it is correspondingly connected to the data bus and all the other microcontrollers are disconnected from the data bus.

[0011] In this way it is possible for one microcontroller after the other to be programmed easily and flexibly without the need for intervention from the outside. At the same time, the parallel connection of the data bus reduces the necessary quantity of feeder lines to a minimum so that even applications with severe restrictions in terms of space available for such routing of cables, for example applications in robots, are made possible.

[0012] By virtue of the interaction of the field bus with the microcontrollers of respectively assigned control units and switching units the invention thus permits the serial data bus to be assigned in a physically precise way to one of the microcontrollers in a serial connection for data communication with said microcontroller despite the parallel connection, and permits all the other microcontrollers to be physically disconnected from the serial data bus. In other words, the invention thus emulates a serial bus connection for a serial data structure when there is a parallel connection of the bus.

[0013] It is thus apparent that the invention is not restricted to drive systems or applications in robots but rather can be used generally wherever a plurality of processors (such as microcontrollers or microprocessors) are controlled via a field bus and data communication (for example for the purpose of programming) is to take place with the processors via a further data bus with a serial data structure. Further fields of application of the invention are thus in particular printing machines, packing machines, medical technology, semiconductor manufacture etc.

[0014] Further advantages, features and details of the invention emerge from the following description of preferred exemplary embodiments as well as with reference to the drawings, in which:

[0015]FIG. 1 shows a drive system for applications in robots which is known from the prior art; and

[0016]FIG. 2 shows a system according to the invention for programming a drive system, in particular for robots.

[0017]FIG. 2 illustrates, by way of example, a preferred embodiment according to the invention for the example of a drive controller, in particular for applications in robots.

[0018] As is also illustrated in FIG. 1, the drive system according to FIG. 2 has a plurality of drive controllers 10 i (where i=A, B, . . . etc.). Each of the drive controllers 10 i is connected to the field bus 30 in a parallel connection and can be controlled centrally by the central controller 50 via said field bus 30.

[0019] In addition, each of the drive controllers 10 i is connected, also in a parallel connection, to a data bus 100 with a serial data structure, via which data bus 100 data communication with one of the drive controllers 10 i can be carried out. In the exemplary embodiment according to FIG. 2, the data bus 100 is connected, as is the field bus 30, to the central controller 50 which has the purpose not only of performing centralized control but also exchanging data and programming the drive controllers 10. However, it goes without saying that, instead of the central controller 50, the data bus 100 can also be connected to a separate data exchange and/or programming unit.

[0020] Since, as is apparent from FIG. 2, the field bus 30 and the data bus 100 can be constructed completely in parallel with one another, they can be combined physically and laid, for example, as a common length of cable.

[0021] As is apparent from the enlarged representation on the right-hand side in FIG. 2 with respect to the drive controller 10B, each of the drive controllers 10 i has a microcontroller 20 i which may be used, for example, for controlling a motor or motor and transmission system (as indicated by arrow 25 i). However, it is apparent that the design according to the invention is not restricted to drive controllers generally or to those which are used in robot technology but rather can be applied to any systems in which a plurality of microcontrollers or other corresponding programmable components can be controlled via a field bus and programmed individually by means of a data bus with a serial data structure.

[0022] In addition to the microcontroller 20 i, each of the drive controllers 10 i has a control unit 110 i and a switching unit 120 i. The control unit 110 i is connected to the field bus 30 and has a control output 130 i to the microcontroller 20 i, and a request output 140 i to the switching unit 120 i. The switching unit 120 i is connected on one side to the data bus 100 and on the other side to the microcontroller 20 i. The switching unit 120 i is controlled via the request output 140 i, the microcontroller 20 i being either connected to the data bus 100 or disconnected from it by means of the switching unit 120 i.

[0023] In a normal operating situation, the drive controllers 10 i are controlled centrally via the field bus 30, the respective control signals being passed on from the field bus 30 via the respective control unit 110 i to the associated microcontroller 20 i via the control output 130 i.

[0024] In order to program the microcontroller 20 i, the associated control unit 110 i receives via the field bus 30 a respective request signal and makes this available, or a signal derived therefrom, to the request output 140 i. By means of this request signal, the control unit 120 i connects the microcontroller 20 i to the data bus 100 so that data communication can take place between the central controller 50 and the microcontroller 20 i via the data bus 100.

[0025] At the same time as the request signal for the control unit 110 i is emitted, the other control units 110 j (where j=A, B, . . . etc., but j≠i) receive respective disconnection signals so that the respective microcontrollers 20 j are correspondingly disconnected from the data bus 100 by means of the associated switching units 120 j.

[0026] It is apparent that, instead of the disconnection signals, it is also possible to conclude that the associated microcontroller 20 j is to be disconnected from the data bus 100 from the absence of a request signal for a respective drive controller 10 j. Thus, for example in principle all the microcontrollers 20 can be disconnected from the data bus 100 by the switching units 120, and the associated microcontroller 20 i is connected to the data bus 100 by means of the switching unit 120 i only when there is a positive (or negative) request signal for one of the drive controllers 10 i.

[0027] The field bus 30 is preferably a CAN bus, and the data bus 100 is preferably a serial RS232 data bus.

[0028] Using the field bus 30 in conjunction with the respective control unit 110 i it is preferably possible to place the microcontroller 20 i in a boot strap mode for programming. 

1. A data processing structure having a plurality of processors (20 i) and a data bus (100) for data communication with a serial data structure, characterized in that the plurality of processors (20 i) can each be connected to the data bus (100) in a parallel connection, and data communication via the data bus (100) with one of the plurality of processors (20 i), preferably comprising programming this processor (20 i), is permitted for this processor (20 i) and prohibited for all the others (20 j) of the plurality of processors.
 2. The data processing structure as claimed in claim 1, characterized in that, for the data communication via the data bus (100) with one of the plurality of processors (20 i), this processor (20 i) is connected to the data bus (100) while all the others (20 j) of the plurality of processors are disconnected from the data bus (100).
 3. The data processing structure as claimed in claim 1 or 2, characterized in that in each case one switching unit (120 i) is connected between each processor (20 i) and the data bus (100), the switching unit (120 i) either connecting the processor (20 i) to the data bus (100) or disconnecting it from the data bus (100).
 4. The data processing structure as claimed in claim 3, characterized in that the plurality of processors (20 i) can be controlled by means of a field bus (30) in a parallel connection.
 5. The data processing structure as claimed in claim 4, characterized in that each processor (20 i) is assigned in each case one control unit (110 i), the control units (110 i) are connected to the field bus (30), and the control units (110 i) can receive control signals via the field bus (30) in order either to connect the respective processors (20 i) to the data bus (100) via the associated switching units (120 i), or disconnect them from the data bus (100).
 6. A data processing structure having a plurality of processors (20 i) which can be controlled via a field bus (30) in a parallel connection, and a data bus (100) for data communication with a serial data structure, characterized in that the plurality of processors (20 i) can be connected both to the field bus (30) and to the data bus (100), in each case in a parallel connection, and for data communication with one of the plurality of processors (20 i) via the data bus (100), this processor (20 i) is connected to the data bus (100), while all the others (20 j) of the plurality of processors are disconnected from the data bus (100).
 7. A drive controller, preferably for a robot, having a data processing structure according to one of the preceding claims.
 8. A method for data communication in a data processing structure having a plurality of processors (20 i) and a data bus (100) for data communication with a serial data structure, the plurality of processors (20 i) being capable of being connected to the data bus (100) in each case in a parallel connection, characterized by the steps: (a) data communication via the data bus (100) is permitted for one (20 i) of the plurality of processors, and (b) data communication via the data bus (100) is simultaneously prohibited for all the others (20 j) of the plurality of processors.
 9. The method as claimed in claim 8, characterized in that the data communication via the data bus (100) for the one (20 i) of the plurality of processors comprises programming this processor (20 i). 